<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

</head>
<body>
<button>按钮1</button>
<button>按钮2</button>
<button>按钮3</button>
<button>按钮4</button>
<button>按钮5</button>

<script >
    var btns=document.getElementsByTagName('button');
    for(var i=0;i<btns.length;i++){
        /*
        构造一个函数，使得i提前入栈成为num,而不是在click时才入栈,i的变化与num无关，即闭包
        */
        (function (num) {
            btns[i].addEventListener('click',function () {
                console.log("第" + num + "个按钮被点击");
            })
        })(i)
        /*
        for循环中的内容，在页面加载的时候就已经被执行了，所以i的值始终是5
        btns[i].addEventListener('click',function () {
            console.log("第" + i + "个按钮被点击");
        })*/
    }
</script>
</body>
</html>